/***************************************************************************
 *   Copyright (C) 2011 by The rPem3d developers                           *
 *   elseifkk@users.sf.net                                                 *
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 *   This program is distributed in the hope that it will be useful,       *
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
 *   GNU General Public License for more details.                          *
 *                                                                         *
 *   You should have received a copy of the GNU General Public License     *
 *   along with this program; if not, write to the                         *
 *   Free Software Foundation, Inc.,                                       *
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
 ***************************************************************************/
#ifndef ORI_H
#define ORI_H

#include "oriDlg.h"

/* image orientation */
int const IO_T=0x01; /* transverse */
int const IO_S=0x02; /* sagittal */
int const IO_C=0x04; /* coronal */

/* patient orientation */
int const PO_S  = 0x01; /* suprine */
int const PO_P  = 0x02; /* prone */
int const PO_DR = 0x04; /* decubitus right */
int const PO_DL = 0x08; /* decubitus left */
int const PO_H  = 0x10; /* head first */
int const PO_F  = 0x20; /* feet first */

int const IOP_UNKNOWN=0;
int const IOP_SHT  =  PO_S | PO_H | IO_T<<8;
int const IOP_SHS  =  PO_S | PO_H | IO_S<<8;
int const IOP_SHC  =  PO_S | PO_H | IO_C<<8;
int const IOP_SFT  =  PO_S | PO_F | IO_T<<8;
int const IOP_SFS  =  PO_S | PO_F | IO_S<<8;
int const IOP_SFC  =  PO_S | PO_F | IO_C<<8;
int const IOP_PHT  =  PO_P | PO_H | IO_T<<8;
int const IOP_PHS  =  PO_P | PO_H | IO_S<<8;
int const IOP_PHC  =  PO_P | PO_H | IO_C<<8;
int const IOP_PFT  =  PO_P | PO_F | IO_T<<8;
int const IOP_PFS  =  PO_P | PO_F | IO_S<<8;
int const IOP_PFC  =  PO_P | PO_F | IO_C<<8;
int const IOP_DRHT = PO_DR | PO_H | IO_T<<8;
int const IOP_DRHS = PO_DR | PO_H | IO_S<<8;
int const IOP_DRHC = PO_DR | PO_H | IO_C<<8;
int const IOP_DRFT = PO_DR | PO_F | IO_T<<8;
int const IOP_DRFS = PO_DR | PO_F | IO_S<<8;
int const IOP_DRFC = PO_DR | PO_F | IO_C<<8;
int const IOP_DLHT = PO_DL | PO_H | IO_T<<8;
int const IOP_DLHS = PO_DL | PO_H | IO_S<<8;
int const IOP_DLHC = PO_DL | PO_H | IO_C<<8;
int const IOP_DLFT = PO_DL | PO_F | IO_T<<8;
int const IOP_DLFS = PO_DL | PO_F | IO_S<<8;
int const IOP_DLFC = PO_DL | PO_F | IO_C<<8;

class oriCls: public oriDlg
{
		Q_OBJECT
	public:
		oriCls ( QWidget *parent = 0, const char *name = 0 );
		~oriCls();
		QString getImageOrientPat();

	private:
		int orientation;

	private slots:
		void oriSlot();
};

#endif
